http://www.borland.pl/cgi-bin/tip.exe/showtip?mode=1&id_tip=44


Wykorzystanie styli XP w Delphi
Krzysztof witkowski

Nowe dziecko Microsoftu - Windows XP - posiada bardzo ciekawy element, ktry nazywa si - kompozycje. 
Jest on istotny dlatego, e pozwala cakowicie zmieni wygld systemu. Poniewa dostosowanie si do 
niego moe starszym programom sprawia problem Microsoft wymaga aby program wymusi na systemie 
zaadowanie nowych bibliotek. 

Programy generowane przez Delphi i C++ Builder'a nie s domylnie przystosowane do obsugi 
kompozycji Windows XP, ale mona je tego szybko nauczy. Wicej, mona nawet nauczy tego 
programy, ktrych kodu rdowego nie mamy. 

Podstaw do wykorzystania przez program kompozycji jest stworzenie manifestu dostpnego razem z aplikacj. 
W najlepszym przypadku manifest ten trafia do zasobw wkompilowanych w program. Ale mona go te zdefiniowa 
zewntrznie w stosunku do programu. Ot wystarczy stworzy w katalogu, w ktrym znajduje si plik exe, plik manifestu.
Co to jest manifest? Manifest jest plikiem XML, ktry okrela pewne parametry wsppracy programu z systemem. 
Szczegowy opis znajduje si w MSDN. Dla naszych potrzeb wystarczy plik manifestu w najprostszej postacji.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity    
version="1.0.0.0"    
processorArchitecture="X86"    
name="ManiTest"    
type="win32"/>

<description>
Universal picture viewer
</description>
<dependency>    
<dependentAssembly>        

<assemblyIdentity            
type="win32"            
name="Microsoft.Windows.Common-Controls"            
version="6.0.0.0"            
processorArchitecture="X86"            
publicKeyToken="6595b64144ccf1df"            
language="*"        />    

</dependentAssembly>
</dependency>
</assembly>


Jeszcze tylko jeden drobiazg. Plik ten musi si nazywa:

tak jak plik uruchamiajcy aplikacj + rozszerzenie .manifest. 
Dla naszego przykadowego programu ManiTest.exe bdzie to plik:
	ManiTest.exe.manifest

Program ManiTest naley sobie zrobi samemu, tworzc now aplikacj i kadc na ni rne kontrolki.
Wskazane s eksperymenty z rnymi kontrolkami poniewa, pki co tylko cz z nich potrafi si 
grzecznie zachowa w Windows XP. Typowym przykadem kontrolki, ktra si wyamuje jest Grid, ktry 
niestety nie wyglda "kompozycyjnie". Ale zawsze mona takie kontrolki zastpi innymi lub napisa 
wasne, ktre bd si dobrze rysoway.

Przykadowy program razem z manifestem (tylko kod rdowy) znajduje si tutaj

